//
//  AppDelegate.m
//  UI12_storyboard
//
//  Created by dllo on 16/7/29.
//  Copyright © 2016年 yh. All rights reserved.
//

#import "AppDelegate.h"

@interface AppDelegate ()

@end

@implementation AppDelegate


- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
    // Override point for customization after application launch.
    // SB
    // 1. 与Xib同属于可视化编程(IB)
    // 2. Xib是对于单视图控制器管理 而SB是多视图控制器管理
    // 3. 创建Single View AppDegate 会生成两个SB文件(Main.storyboard(主要的视图控制管理) LaunchScreen.storyboard(启动屏幕页视图管理 在X-code7以前 生成的是.Xib文件))
    // 4. 如果使用SB开发 不需要创建window
    
    // Main.storyboard 系统默认main为整个程序的入口 Main.storyboard  默认ViewController为
    // Main.storyboard 默认以ViewController为入口
    
    // 一个工程可以有多个storyboard
    
    // 1. 让storyboard有一个入口 (有一个初始的vc)
    // 2. 让vc对应关联类
    
    // SB 中的界面跳转是单向的
    // 1.  UIStoryboardSegue 用来执行页面跳转
    // 2. 如果要使页面跳转变为双向 需要自己定义 UIStoryboardSegue 定义时 必须重写perform方法
    // 3. 自定义完成后 系统会自动识别 - (void)perform 方法
    
    // 系统的storyboard的界面跳转 (show show detail present)
    // show: 根据是否包含navigation 决定跳转方式
    // show detail (模态效果)
    // present (模态)
    
    
    return YES;
}

- (void)applicationWillResignActive:(UIApplication *)application {
    // Sent when the application is about to move from active to inactive state. This can occur for certain types of temporary interruptions (such as an incoming phone call or SMS message) or when the user quits the application and it begins the transition to the background state.
    // Use this method to pause ongoing tasks, disable timers, and throttle down OpenGL ES frame rates. Games should use this method to pause the game.
}

- (void)applicationDidEnterBackground:(UIApplication *)application {
    // Use this method to release shared resources, save user data, invalidate timers, and store enough application state information to restore your application to its current state in case it is terminated later.
    // If your application supports background execution, this method is called instead of applicationWillTerminate: when the user quits.
}

- (void)applicationWillEnterForeground:(UIApplication *)application {
    // Called as part of the transition from the background to the inactive state; here you can undo many of the changes made on entering the background.
}

- (void)applicationDidBecomeActive:(UIApplication *)application {
    // Restart any tasks that were paused (or not yet started) while the application was inactive. If the application was previously in the background, optionally refresh the user interface.
}

- (void)applicationWillTerminate:(UIApplication *)application {
    // Called when the application is about to terminate. Save data if appropriate. See also applicationDidEnterBackground:.
}

@end
